Amortized Efficiency of List

نویسندگان

  • Ellis Horowitz
  • DANIEL D. SLEATOR
  • ROBERT E. TARJAN
چکیده

In this article we study the amortized efficiency of the “move-to-front” and similar rules for dynamically maintaining a linear list. Under the assumption that accessing the ith element from the front of the list takes 0(i) time, we show that move-to-front is within a consfant factor of optimum among a wide class of list maintenance rules. Other natural heuristics, such as the transpose and frequency count rules, da not share this property. We generalize our results to show that move-to-front is within a constant factor of optimum as long as the access cost is a convex function. We also study paging, a setting in which the access cost is not convex. The paging rule corresponding to move-to-front is the “least recently used” (LRU) replacement rule. We analyze the amortized complexity of LRU, showing that its efficiency differs from that of the offline paging rule (Belady’s MIN algorithm) by a factor that depends on the size of fast memory. No on-line paging algorithm has better amortized performance.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Update and Paging Rules

In this article we study the amortized efficiency of the “move-to-front” and similar rules for dynamically maintaining a linear list. Under the assumption that accessing the i th element from the front of the list takes e(i) time, we show that move-to-front is within a constant factor of optimum among a wide class of list maintenance rules. Other natural heuristics, such as the transpose and fr...

متن کامل

Non-Blocking Doubly-Linked Lists with Good Amortized Complexity

We present a new non-blocking doubly-linked list implementation for an asynchronous sharedmemory system. It is the first such implementation for which an upper bound on amortized time complexity has been proved. In our implementation, operations access the list via cursors. Each cursor is associated with an item in the list and is local to a process. The implementation supports two update opera...

متن کامل

Ics 691: Advanced Data Structures Lecture 2 2 Searching a List 2.1 Static Structure

In the last lecture we discussed amortized analysis and looked at the 3 methods: aggregate, accounting, and potential. We used these 3 methods to show that the amortized complexity of the binary counter problem is O(n). Finally, we applied amortized analysis to the problem of inserting data into dynamic arrays, showing that inserting n objects has an amortized cost of O(n), despite the worst-ca...

متن کامل

Oracles for vertex elimination orderings

By maintaining appropriate data structures, we develop constant-time transposition oracles that answer whether or not two adjacent vertices in a simple elimination ordering (SEO) or a semiperfect elimination ordering (semiPEO) can be swapped to produce a new SEO or semiPEO, respectively. Combined with previous results regarding convex geometries and antimatroids, this allows us to list all SEOs...

متن کامل

Amortization, Lazy Evaluation, and Persistence: Lists with Catenation via Lazy Linking

Amortization has been underutilized in the design of persistent data structures, largely because traditional accounting schemes break down in a persistent setting. Such schemes depend on saving “credits” for future use, but a persistent data structure may have multiple “futures”, each competing for the same credits. We describe how lazy evaluation can often remedy this problem, yielding persist...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999